package com.tongtech.system.domain;

import com.tongtech.common.core.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 资讯表 information
 *
 * @author xingyc
 */
public class Information extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 资讯ID
     */
    private Long informationId;

    /**
     * 加密后的资讯ID
     */
    private String informationIdStr;

    /**
     * 资讯分类id
     */
    private Long informationCategoryId;

    /**
     * 资讯分类名称
     */
    private String informationCategoryName;

    /**
     * 资讯分类，祖级列表
     */
    private String informationCategoryAncestors;

    /**
     * 资讯标题
     */
    private String title;

    /**
     * 资讯内容(md格式)
     */
    private String content;

    /**
     * 浏览次数
     */
    private Integer viewNum;

    /**
     * 显示顺序
     */
    private Integer orderNum;

    /**
     * 版本
     */
    private Integer version;

    /**
     * 发布状态 0-草稿 1-待审核 2-审核通过 1-已发布
     */
    private String publishStatus;

    /**
     * 发布状态 0-非热点 1-热点
     */
    private String hotspot;

    /**
     * 是否推送给所有用户
     */
    private String toAllUser;

    /**
     * 发布状态 0-非热点 1-热点
     */
    private String rePublish;

    /**
     * 资讯状态:0正常,1停用
     */
    private String status;

    /**
     * 删除标志（0代表存在 2代表删除）
     */
    private String delFlag;

    /**
     * 当前登录人，是否已经订阅该类型资讯
     */
    private boolean subscribed;

    public Long getInformationId() {
        return informationId;
    }

    public void setInformationId(Long informationId) {
        this.informationId = informationId;
    }

    public String getInformationIdStr() {
        return informationIdStr;
    }

    public void setInformationIdStr(String informationIdStr) {
        this.informationIdStr = informationIdStr;
    }

    public Long getInformationCategoryId() {
        return informationCategoryId;
    }

    public void setInformationCategoryId(Long informationCategoryId) {
        this.informationCategoryId = informationCategoryId;
    }

    public String getInformationCategoryName() {
        return informationCategoryName;
    }

    public void setInformationCategoryName(String informationCategoryName) {
        this.informationCategoryName = informationCategoryName;
    }

    public String getInformationCategoryAncestors() {
        return informationCategoryAncestors;
    }

    public void setInformationCategoryAncestors(String informationCategoryAncestors) {
        this.informationCategoryAncestors = informationCategoryAncestors;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public Integer getViewNum() {
        return viewNum;
    }

    public void setViewNum(Integer viewNum) {
        this.viewNum = viewNum;
    }

    public Integer getOrderNum() {
        return orderNum;
    }

    public void setOrderNum(Integer orderNum) {
        this.orderNum = orderNum;
    }

    public String getPublishStatus() {
        return publishStatus;
    }

    public void setPublishStatus(String publishStatus) {
        this.publishStatus = publishStatus;
    }

    public String getHotspot() {
        return hotspot;
    }

    public void setHotspot(String hotspot) {
        this.hotspot = hotspot;
    }

    public String getToAllUser() {
        return toAllUser;
    }

    public void setToAllUser(String toAllUser) {
        this.toAllUser = toAllUser;
    }

    public String getRePublish() {
        return rePublish;
    }

    public void setRePublish(String rePublish) {
        this.rePublish = rePublish;
    }

    public Integer getVersion() {
        return version;
    }

    public void setVersion(Integer version) {
        this.version = version;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public boolean isSubscribed() {
        return subscribed;
    }

    public void setSubscribed(boolean subscribed) {
        this.subscribed = subscribed;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("informationId", getInformationId())
                .append("informationCategoryId", getInformationCategoryId())
                .append("informationCategoryName", getInformationCategoryName())
                .append("informationCategoryAncestors", getInformationCategoryAncestors())
                .append("title", getTitle())
                .append("content", getContent())
                .append("viewNum", getViewNum())
                .append("version", getVersion())
                .append("orderNum", getOrderNum())
                .append("publishStatus", getPublishStatus())
                .append("hotspot", getHotspot())
                .append("toAllUser", getToAllUser())
                .append("rePublish", getRePublish())
                .append("status", getStatus())
                .append("delFlag", getDelFlag())
                .append("subscribed", isSubscribed())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .toString();
    }
}
